1. Field of the Invention
This invention relates to collaborative computing and, more particularly, to a platform-independent backbone and framework that may be used to form Web-based virtual communities having virtual rooms with collaborative sessions.
2. Discussion of Related Art
There has been increasing interest in collaborative systems. These systems allow multiple users to interact with one another. Common examples include chat rooms, shared white boards, and the like.
Although there are a few commercial products on the market, some of the more interesting systems are being developed and evaluated in university laboratories. For example, Old Dominion University has developed The Java Collaborator Tool-set. Under this system all events of one application are distributed to all other applications in the session. However, there is no support for multiple sessions of a given application type, and the session management is fixed. The Habanero system of The National Center for Supercomputer Applications at The University of Illinois at Urbana-Champaign uses a client-server architecture in which the client applications provide a user-interface and the application logic is implemented as Java applications, not applets. Consequently, the software is not downloadable and the system is not properly considered as "Web-based." The system is decoupled from browsers and the Web. Moreover, the system does not support selective opening of remote applications.
Though the above systems promise various forms of collaborative functionality, none are known to integrate the advantages of the Internet's informational content or its platform-independence. Moreover, many of the above systems place constraints on the design and construction of the underlying collaborative application. For example, many of the systems require the collaborative application to be built using a set of predefined libraries. Thus, their utility is primarily directed to the development of new applications, meaning that existing applications would have to be entirely re-designed to make them collaborative. Furthermore, the known systems tend to have essentially rigid paradigms of what a collaborative application entails. This is reflected in the design of the prior art systems, which tend to require identical application instances and data models. It is also reflected in the systems having rigid ideas about session management and floor control. (These aspects control how a user may join and leave a collaborative session.)
There is therefore a need in the art for a collaborative system that overcomes the above disadvantages.